#include "BlackDeath.Core.h"

namespace BlackDeath
{
	namespace Graphics
	{
		class CIndexBuffer
		{
			private:
			#pragma region Variables
				CGraphicsDevice* m_pGraphicsDevice;
				D3D10_USAGE m_eBufferUsage;
				ID3D10Buffer* m_iBuffer;
				int m_iLength;
				int m_iStride;
			#pragma endregion

			#pragma region Initialize
				void CreateBuffer(void*);
			#pragma endregion

			public:
			#pragma region Constructor and Destructor
				CIndexBuffer(CGraphicsDevice*, int, int, D3D10_USAGE);
				virtual ~CIndexBuffer();
			#pragma endregion

			#pragma region Methods
				void SetData(void*);
				int Get_SizeInBytes();
				int Get_Length();
			#pragma endregion

			friend class CGraphicsDevice;
		};
	}
}